package com.gzist.elderlyserviceplatform.common.constants;

/**
 * AI模型名称常量类
 * 包含所有可用的模型名称常量
 */
public final class ModelConstants {
    private ModelConstants() {
        throw new AssertionError("不可实例化");
    }

    // Qwen系列模型
    public static final String QWEN_QWQ_32B = "Qwen/QwQ-32B";
    public static final String QWEN_QWQ_32B_PREVIEW = "Qwen/QwQ-32B-Preview";
    public static final String QWEN2_7B_INSTRUCT = "Qwen/Qwen2-7B-Instruct";
    public static final String QWEN2_1_5B_INSTRUCT = "Qwen/Qwen2-1.5B-Instruct";
    public static final String QWEN2_5_72B_INSTRUCT = "Qwen/Qwen2.5-72B-Instruct";
    public static final String QWEN2_5_72B_INSTRUCT_128K = "Qwen/Qwen2.5-72B-Instruct-128K";
    public static final String QWEN2_5_32B_INSTRUCT = "Qwen/Qwen2.5-32B-Instruct";
    public static final String QWEN2_5_14B_INSTRUCT = "Qwen/Qwen2.5-14B-Instruct";
    public static final String QWEN2_5_7B_INSTRUCT = "Qwen/Qwen2.5-7B-Instruct";
    public static final String QWEN2_5_CODER_32B_INSTRUCT = "Qwen/Qwen2.5-Coder-32B-Instruct";
    public static final String QWEN2_5_CODER_7B_INSTRUCT = "Qwen/Qwen2.5-Coder-7B-Instruct";

    // DeepSeek系列模型
    public static final String DEEPSEEK_R1 = "deepseek-ai/DeepSeek-R1";
    public static final String DEEPSEEK_V3 = "deepseek-ai/DeepSeek-V3";
    public static final String DEEPSEEK_V2_5 = "deepseek-ai/DeepSeek-V2.5";
    public static final String DEEPSEEK_R1_DISTILL_QWEN_32B = "deepseek-ai/DeepSeek-R1-Distill-Qwen-32B";
    public static final String DEEPSEEK_R1_DISTILL_QWEN_14B = "deepseek-ai/DeepSeek-R1-Distill-Qwen-14B";
    public static final String DEEPSEEK_R1_DISTILL_QWEN_7B = "deepseek-ai/DeepSeek-R1-Distill-Qwen-7B";
    public static final String DEEPSEEK_R1_DISTILL_QWEN_1_5B = "deepseek-ai/DeepSeek-R1-Distill-Qwen-1.5B";

    // Pro版本模型
    public static final String PRO_DEEPSEEK_R1 = "Pro/deepseek-ai/DeepSeek-R1";
    public static final String PRO_DEEPSEEK_V3 = "Pro/deepseek-ai/DeepSeek-V3";
    public static final String PRO_DEEPSEEK_R1_DISTILL_QWEN_7B = "Pro/deepseek-ai/DeepSeek-R1-Distill-Qwen-7B";
    public static final String PRO_DEEPSEEK_R1_DISTILL_QWEN_1_5B = "Pro/deepseek-ai/DeepSeek-R1-Distill-Qwen-1.5B";
    public static final String PRO_QWEN2_5_7B_INSTRUCT = "Pro/Qwen/Qwen2.5-7B-Instruct";
    public static final String PRO_QWEN2_7B_INSTRUCT = "Pro/Qwen/Qwen2-7B-Instruct";
    public static final String PRO_QWEN2_1_5B_INSTRUCT = "Pro/Qwen/Qwen2-1.5B-Instruct";

    // 其他厂商模型
    public static final String TELEAI_TELECHAT2 = "TeleAI/TeleChat2";
    public static final String THUDM_GLM_4_9B_CHAT = "THUDM/glm-4-9b-chat";
    public static final String VENDOR_A_QWEN2_5_72B_INSTRUCT = "Vendor-A/Qwen/Qwen2.5-72B-Instruct";
    public static final String INTERNLM2_5_7B_CHAT = "internlm/internlm2_5-7b-chat";
    public static final String INTERNLM2_5_20B_CHAT = "internlm/internlm2_5-20b-chat";
    public static final String PRO_THUDM_CHATGLM3_6B = "Pro/THUDM/chatglm3-6b";
    public static final String PRO_THUDM_GLM_4_9B_CHAT = "Pro/THUDM/glm-4-9b-chat";

    // 绘图模型
    public static final String KWAI_KOLORS = "Kwai-Kolors/Kolors";
    public static final String PRO_STABLEDIFFUSION_2_1 = "Pro/StableDiffusion/stable-diffusion-2-1";
    public static final String PRO_STABLEDIFFUSION_2_1_BASE = "Pro/StableDiffusion/stable-diffusion-2-1-base";
    public static final String PRO_STABLEDIFFUSION_2_0 = "Pro/StableDiffusion/stable-diffusion-2-0";
    public static final String PRO_STABLEDIFFUSION_2_0_BASE = "Pro/StableDiffusion/stable-diffusion-2-0-base";
    public static final String PRO_STABLEDIFFUSION_1_5 = "Pro/StableDiffusion/stable-diffusion-1-5";
}